package com.qys.livesMall.shop.modal.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * <p>
 *
 * </p>
 *
 * @author gmx
 * @since 2023-06-19
 */
@Getter
@Setter
@TableName("h2_shop_order_info")
@Schema(name = "ShopOrderInfo", description = "")
public class ShopOrderInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "订单id")
    @TableId(value = "id", type = IdType.INPUT)
    private Long id;

    @Schema(description = "数量合计")
    private Integer totalNum;

    @Schema(description = "金额合计")
    private BigDecimal moneys;

    @Schema(description = "支付类型，1、在线支付、0 货到付款")
    private Integer payType;

    @Schema(description = "订单创建时间")
    private Long createTime;

    @Schema(description = "订单更新时间")
    private Long updateTime;

    @Schema(description = "付款时间")
    private Long payTime;

    @Schema(description = "用户id")
    private Long userId;

    @Schema(description = "用户名称")
    private String userName;

    @Schema(description = "邮费")
    private BigDecimal totalPostage;

    @Schema(description = "交易流水号")
    private String weixinTransactionId;
    @Schema(description = "支付状态,0:未支付，1：已支付，2：支付失败")
    private String payStatus;

    @Schema(description = "是否删除")
    private String isDelete;

    @Schema(description = "发货时间")
    private Long consignTime;

    @Schema(description = "交易完成时间")
    private Long endTime;

    @Schema(description = "订单状态,0:未发货,1:已发货，2：确认收货，3：退货中，4：退货完成")
    private Integer orderStatus;



    @Schema(description = "国家")
    private Long country;

    @Schema(description = "国家名称")
    private String countryName;

    @Schema(description = "收货人姓名")
    private String consigUser;

    @Schema(description = "邮编")
    private String postalCode;

    @Schema(description = "有限")
    private String email;

    @Schema(description = "收货人地址")
    private String address;

    @Schema(description = "电话")
    private String mobile;

    @Schema(description = "城市")
    private String city;

    @Schema(description = "地标")
    private String landmark;
    @Schema(description = "秒杀订单Id")
    private Long seckillOrderId;

    /**
     * 订单号
     */
    private String orderNo;

    @Schema(description = "商品名字")
    @TableField(exist = false)
    private String names;

    @TableField(exist = false)
    private Integer showStatus;

}
